package com.weipu.common.facade.factory;

import com.weipu.common.facade.AdPromotionServiceProvider;
import com.weipu.common.facade.CouponServiceProvider;
import com.weipu.common.facade.CreditCardServiceProvider;
import com.weipu.common.facade.CurrencyServiceProvider;
import com.weipu.common.facade.MainActivityServiceProvider;
import com.weipu.common.facade.OrderServiceProvider;
import com.weipu.common.facade.ProductServiceProvider;
import com.weipu.common.facade.ShoppingCartServiceProvider;
import com.weipu.common.facade.TrackServiceProvider;
import com.weipu.common.facade.UpateServerProvider;
import com.weipu.common.facade.UserServiceProvider;
import com.weipu.common.facade.content.api.BrowsingHistoryService;
import com.weipu.common.facade.content.api.CategoryService;
import com.weipu.common.facade.content.api.HomeModuleDataService;
import com.weipu.common.facade.content.api.HotWordService;
import com.weipu.common.facade.content.api.MyCartService;
import com.weipu.common.facade.content.api.OnekeyFilterService;
import com.weipu.common.facade.content.api.ProductService;
import com.weipu.common.facade.content.api.SearchHistoryService;
import com.weipu.common.facade.impl.AdPromotionServiceProviderImpl;
import com.weipu.common.facade.impl.CouponServiceProviderImpl;
import com.weipu.common.facade.impl.CreditCardServiceProviderImpl;
import com.weipu.common.facade.impl.CurrencyServiceProviderImpl;
import com.weipu.common.facade.impl.IPCountryServiceProviderImpl;
import com.weipu.common.facade.impl.MainActivityServiceProviderImpl;
import com.weipu.common.facade.impl.MessageServiceProviderImpl;
import com.weipu.common.facade.impl.OrderServiceProviderImpl;
import com.weipu.common.facade.impl.ProductServiceProviderImpl;
import com.weipu.common.facade.impl.SearchServiceProviderImpl;
import com.weipu.common.facade.impl.ShoppingCartServiceProviderImpl;
import com.weipu.common.facade.impl.UpdateServiceProviderImpl;
import com.weipu.common.facade.impl.UserServiceProviderImpl;

/**
 * Provider 工厂类
 * @author Administrator
 *
 */
public final class ProviderFactory
{
    //Local db provider begin
    
    public static HotWordService createHotWordServiceDBProvider()
    {
        return new HotWordService();
    }
    
    public static BrowsingHistoryService createBrowsingHistoryServiceDBProvider()
    {
        return new BrowsingHistoryService();
    }
    
    public static CategoryService createCategoryServiceDBProvider()
    {
        return new CategoryService();
    }
    
    public static MyCartService createMyCartServiceDBProvider()
    {
        return new MyCartService();
    }
    
    public static ProductService createProductDBProvider()
    {
        return new ProductService();
    }
    
    public static SearchHistoryService createSearchHistoryServiceDBProvider()
    {
        return new SearchHistoryService();
    }
    
    public static HomeModuleDataService createHomeModuleDataServiceDBProvider()
    {
        return new HomeModuleDataService();
    }
    
    //Local db provider end
    
    //DX API provider begin
    
    public static MainActivityServiceProvider createMainServiceProvider()
    {
        return new MainActivityServiceProviderImpl();
    }
    
    public static ProductServiceProvider createProductProvider()
    {
        return new ProductServiceProviderImpl();
    }
    
    public static UserServiceProvider createUserServiceProvider()
    {
        return new UserServiceProviderImpl();
    }
    
    public static OrderServiceProvider createOrderServiceProvider()
    {
        return new OrderServiceProviderImpl();
    }
    
    public static AdPromotionServiceProvider createAdPromotionServiceProvider()
    {
        return new AdPromotionServiceProviderImpl();
    }
    
    public static ShoppingCartServiceProvider createShoppingCartServiceProvider()
    {
    	return new ShoppingCartServiceProviderImpl();
    }
    
    public static CouponServiceProvider createCouponServiceProvider()
    {
    	return new CouponServiceProviderImpl();
    }
    
    public static CurrencyServiceProvider createCurrencyServiceProvider()
    {
    	return new CurrencyServiceProviderImpl();
    }
    
    public static CreditCardServiceProvider createCreditCardServiceProvider()
    {
    	return new CreditCardServiceProviderImpl();
    }
    public static OnekeyFilterService createOnekeyFilterService()
    {
    	return new OnekeyFilterService();
    }
    
    public static SearchServiceProviderImpl createSearchService()
    {
    	return new SearchServiceProviderImpl();
    }
    
    public static MessageServiceProviderImpl createMessageService()
    {
    	return new MessageServiceProviderImpl();
    }

    public static IPCountryServiceProviderImpl createIpCountryService()
    {
        return new IPCountryServiceProviderImpl();
    }

    public static UpateServerProvider createUpdateService(){
        return new UpdateServiceProviderImpl();
    }

    public static TrackServiceProvider createTrackService() {
        return new TrackServiceProvider();
    }
    //DX API provider end
    
}
